// pages/home/home.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    count: 0,
    colorList: [], // 随机颜色的列表
    isloading: false, // 节流阀，默认为false
    // placeholderHeight: 0 // 占位符高度，默认为 0

  },

  getColors() {
    if (this.data.isloading) return; // 如果正在加载数据，直接返回
    this.setData({
      isloading: true // 设置节流阀为 true
    });

    wx.showLoading({
      title: '数据加载中。。。',
    })
    wx.request({
      url: 'https://applet-base-api-t.itheima.net/api/color',
      method: 'GET',
      success: ({ data: res }) => {
        this.setData({
          colorList: [...this.data.colorList, ...res.data],
          // placeholderHeight: this.data.placeholderHeight + 1000 // 增加占位符高度
        });
        wx.hideLoading(); // 请求成功时隐藏loading效果
      },
      fail: (err) => {
        console.error('请求失败', err);
        wx.hideLoading(); // 请求失败时隐藏loading效果
      },
      complete: () => {
        // 这里也可以保留，作为额外的保障
        wx.hideLoading(); // 请求完成时隐藏loading效果
        this.setData({
          isloading: false // 重置节流阀为 false
        });
      }
    });
  },

  // +1按钮的点击事件处理函数
  countAdd() {
    this.setData({
      count: this.data.count + 1
    })
  },

  // 页面相关事件处理函数-监听用户下拉工作
  onPullDownRefresh: function() {
    this.setData({
      count: 0
    })
    // 当数据重置成功后，调用此函数，关闭下拉刷新的效果
    wx.stopPullDownRefresh()
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {
    console.log('触发了上拉触底的事件');
    // this.getColors();
    if (!this.data.isloading) { // 如果节流阀为 false，才发起请求
      this.getColors();
    }
  },

  gotoMessage() {
    wx.switchTab({
      url: '/pages/message/message'
    })
  },

  gotoInfo() {
    wx.navigateTo({
      url: '/pages/info/info',
    })
  },

  gotoInfo2() {
    wx.navigateTo({
      url: '/pages/info/info?name=ls&gender=男',
    })
  },


  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
    this.getColors()

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  // onPullDownRefresh() {
  // },

  

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})